<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>QxOrm: qx::QxModel&lt; T &gt; Class Template Reference</title>

<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>

</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  <td id="projectlogo"><img alt="Logo" src="logo_qxorm.png"/></td>
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname">QxOrm
   &#160;<span id="projectnumber">1.4.3</span>
   </div>
   <div id="projectbrief">C++ Object Relational Mapping library</div>
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.7.5.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="dirs.html"><span>Directories</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div>
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
  initNavTree('classqx_1_1_qx_model.html','');
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="#friends">Friends</a>  </div>
  <div class="headertitle">
<div class="title">qx::QxModel&lt; T &gt; Class Template Reference<div class="ingroups"><a class="el" href="group___qx_model_view.html">QxModelView : All classes registered into QxOrm context can be used with Qt model/view architecture (Qt widgets and/or QML views)</a></div></div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="qx::QxModel" --><!-- doxytag: inherits="qx::IxModel" -->
<p>qx::QxModel&lt;T&gt; : all classes registered into QxOrm context can be used with Qt model/view architecture (Qt widgets and/or QML views)  
 <a href="classqx_1_1_qx_model.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="_qx_model_8h_source.html">QxModel.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for qx::QxModel&lt; T &gt;:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classqx_1_1_qx_model.png" usemap="#qx::QxModel&lt; T &gt;_map" alt=""/>
  <map id="qx::QxModel&lt; T &gt;_map" name="qx::QxModel&lt; T &gt;_map">
<area href="classqx_1_1_ix_model.html" title="qx::IxModel : interface to manage Qt model/view architecture with classes registered into QxOrm conte..." alt="qx::IxModel" shape="rect" coords="0,0,173,24"/>
<area href="classqx_1_1_qx_model_service.html" title="qx::QxModelService&lt;T, S&gt; : provides an easy way to connect your model to the QxService module (all qu..." alt="qx::QxModelService&lt; T, S &gt;" shape="rect" coords="0,112,173,136"/>
</map>
 </div></div>

<p><a href="classqx_1_1_qx_model-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="classqx_1_1_qx_model.html#a300182d32beae72eb99a1e80f8f27c3daf3099edbe58e32e177628cac6c816e4f">qx_is_valid</a> =  qx::trait::is_qx_registered&lt;T&gt;::value
 }</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef qx_shared_ptr&lt; T &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#aef823670a8fc66b5d0c8d887034b45a6">type_ptr</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <br class="typebreak"/>
<a class="el" href="classqx_1_1trait_1_1get__primary__key.html">qx::trait::get_primary_key</a>&lt; T &gt;<br class="typebreak"/>
::type&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a2d1a76e9a19ad15e645dbd6605fa7f3f">type_primary_key</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classqx_1_1_qx_collection.html">qx::QxCollection</a><br class="typebreak"/>
&lt; <a class="el" href="classqx_1_1_qx_model.html#a2d1a76e9a19ad15e645dbd6605fa7f3f">type_primary_key</a>, <a class="el" href="classqx_1_1_qx_model.html#aef823670a8fc66b5d0c8d887034b45a6">type_ptr</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#aaaf8416f552f17d358c8ad844bb7e66f">type_collection</a></td></tr>
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a8b67a5b81dc16016cfc55ca143657b0f">QxModel</a> (QObject *parent=0)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a383471d700890b1e4bc63369677ea557">QxModel</a> (<a class="el" href="classqx_1_1_ix_model.html">qx::IxModel</a> *other, QObject *parent)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a6a66f0323e0f95dd5a900d12d8387fca">~QxModel</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QVariant&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#aa90fdd2a234ca292b76b5cda59fab826">data</a> (const QModelIndex &amp;index, int role=Qt::DisplayRole) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a8941b0324ac03f964e790c3472dcecd6">setData</a> (const QModelIndex &amp;index, const QVariant &amp;value, int role=Qt::EditRole)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a0084426b5d4f8b15f0a0f0c34c78b3d9">insertRows</a> (int row, int count, const QModelIndex &amp;parent=QModelIndex())</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#ab543c16cd10277f7c9c4231cf4857801">qxCount</a> (const <a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a> &amp;query=<a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a>(), QSqlDatabase *pDatabase=NULL)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the number of lines in the table (database) mapped to the C++ class T (registered into QxOrm context) and filtered by a user SQL query.  <a href="#ab543c16cd10277f7c9c4231cf4857801"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QSqlError&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#ac62fc3913e4662c103db997c848afd1a">qxCount</a> (long &amp;lCount, const <a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a> &amp;query=<a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a>(), QSqlDatabase *pDatabase=NULL)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the number of lines in the table (database) mapped to the C++ class T (registered into QxOrm context) and filtered by a user SQL query.  <a href="#ac62fc3913e4662c103db997c848afd1a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QSqlError&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a6b29016768ce825825912d21f2791e4f">qxFetchById</a> (const QVariant &amp;id, const QStringList &amp;relation=QStringList(), QSqlDatabase *pDatabase=NULL)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear the model and fetch an object (retrieve all its properties) of type T (registered into QxOrm context) mapped to a table in the database.  <a href="#a6b29016768ce825825912d21f2791e4f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QSqlError&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a859860c6ada5c046f2f2d8fbdb5ebc60">qxFetchAll</a> (const QStringList &amp;relation=QStringList(), QSqlDatabase *pDatabase=NULL)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear the model and fetch a list of objects (retrieve all elements and properties associated) of type T (container registered into QxOrm context) mapped to a table in the database.  <a href="#a859860c6ada5c046f2f2d8fbdb5ebc60"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QSqlError&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#aee84c03d9c6e703224f7537bd96c9707">qxFetchByQuery</a> (const <a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a> &amp;query, const QStringList &amp;relation=QStringList(), QSqlDatabase *pDatabase=NULL)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear the model and fetch a list of objects (retrieve all elements and properties associated) of type T (container registered into QxOrm context) mapped to a table in the database and filtered by a user SQL query.  <a href="#aee84c03d9c6e703224f7537bd96c9707"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QSqlError&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a92d80b8a5a9afa7b8d3389d1c8a5d35f">qxFetchRow</a> (int row, const QStringList &amp;relation=QStringList(), QSqlDatabase *pDatabase=NULL)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get an item in the model at line row and fetch all its properties mapped to a table in the database, then all views attached to this model are automatically updated.  <a href="#a92d80b8a5a9afa7b8d3389d1c8a5d35f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QSqlError&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a2c5e298517e16c9fc8b241fe77e9b27a">qxInsert</a> (const QStringList &amp;relation=QStringList(), QSqlDatabase *pDatabase=NULL)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Insert all items in the model into database.  <a href="#a2c5e298517e16c9fc8b241fe77e9b27a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QSqlError&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a93b788ce05b2eed6acb163547d0a3176">qxInsertRow</a> (int row, const QStringList &amp;relation=QStringList(), QSqlDatabase *pDatabase=NULL)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Insert an item of the model at line row into database.  <a href="#a93b788ce05b2eed6acb163547d0a3176"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QSqlError&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#aca89226b12bea5293216506376e6ae79">qxUpdate</a> (const <a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a> &amp;query=<a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a>(), const QStringList &amp;relation=QStringList(), QSqlDatabase *pDatabase=NULL)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Update all items in the model into database.  <a href="#aca89226b12bea5293216506376e6ae79"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QSqlError&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#ad4e848b1a9bc24cb724a9416fd1d76a0">qxUpdateRow</a> (int row, const <a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a> &amp;query=<a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a>(), const QStringList &amp;relation=QStringList(), QSqlDatabase *pDatabase=NULL)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Update an item of the model at line row into database.  <a href="#ad4e848b1a9bc24cb724a9416fd1d76a0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QSqlError&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a996a650f41e2b871975cea5d1d5c10f5">qxSave</a> (const QStringList &amp;relation=QStringList(), QSqlDatabase *pDatabase=NULL)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Save all items (insert or update) in the model into database.  <a href="#a996a650f41e2b871975cea5d1d5c10f5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QSqlError&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a6c2d4497957d25bacebd440047d3ba59">qxSaveRow</a> (int row, const QStringList &amp;relation=QStringList(), QSqlDatabase *pDatabase=NULL)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Save an item of the model at line row into database.  <a href="#a6c2d4497957d25bacebd440047d3ba59"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QSqlError&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#ad2ea10ec9cd2b43f1ef9e1d0e324e564">qxDeleteById</a> (const QVariant &amp;id, QSqlDatabase *pDatabase=NULL)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Delete a line of a table (database) mapped to a C++ object of type T (registered into QxOrm context), if no error occurred then you should remove row from the model.  <a href="#ad2ea10ec9cd2b43f1ef9e1d0e324e564"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QSqlError&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a011b3409d8acc14a074629cf024f0ca3">qxDeleteAll</a> (QSqlDatabase *pDatabase=NULL)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Delete all lines of a table (database) mapped to a C++ class T (registered into QxOrm context), if no error occurred then you should clear the model.  <a href="#a011b3409d8acc14a074629cf024f0ca3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QSqlError&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a87b34ae02a5ef623534230c2cb82ec87">qxDeleteByQuery</a> (const <a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a> &amp;query, QSqlDatabase *pDatabase=NULL)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Delete all lines of a table (database) mapped to a C++ class T (registered into QxOrm context) and filtered by a user SQL query, if no error occurred then you should refresh the model.  <a href="#a87b34ae02a5ef623534230c2cb82ec87"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QSqlError&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a5650b97f0190a6a044e95185f7f329c6">qxDeleteRow</a> (int row, QSqlDatabase *pDatabase=NULL)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Delete in database the item at line row in the model, if no error occurred then you should remove row from the model.  <a href="#a5650b97f0190a6a044e95185f7f329c6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QSqlError&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a4e8d847120cab3c823d97253daa9cabf">qxDestroyById</a> (const QVariant &amp;id, QSqlDatabase *pDatabase=NULL)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Delete a line of a table (even if a logical delete is defined) mapped to a C++ object of type T (registered into QxOrm context), if no error occurred then you should remove row from the model.  <a href="#a4e8d847120cab3c823d97253daa9cabf"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QSqlError&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a3461b11d9fd96e205613edeaeba069e7">qxDestroyAll</a> (QSqlDatabase *pDatabase=NULL)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Delete all lines of a table (even if a logical delete is defined) mapped to a C++ class T (registered into QxOrm context), if no error occurred then you should clear the model.  <a href="#a3461b11d9fd96e205613edeaeba069e7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QSqlError&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#ab23d15ff34b124f383960d8948285877">qxDestroyByQuery</a> (const <a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a> &amp;query, QSqlDatabase *pDatabase=NULL)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Delete all lines of a table (even if a logical delete is defined) mapped to a C++ class T (registered into QxOrm context) and filtered by a user SQL query, if no error occurred then you should refresh the model.  <a href="#ab23d15ff34b124f383960d8948285877"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QSqlError&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a4b533b2f1f8634db23101e7a21d7ea06">qxDestroyRow</a> (int row, QSqlDatabase *pDatabase=NULL)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Delete in database (even if a logical delete is defined) the item at line row in the model, if no error occurred then you should remove row from the model.  <a href="#a4b533b2f1f8634db23101e7a21d7ea06"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QSqlError&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#ab11ea058c052afca523b3a49eaeb75ea">qxExecuteQuery</a> (<a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a> &amp;query, QSqlDatabase *pDatabase=NULL)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="_qx_bool_8h.html#a40069a4245b458585997dadea3a86b33">qx_bool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a500a9bb91d16b10af29419d738e398b9">qxExist</a> (const QVariant &amp;id, QSqlDatabase *pDatabase=NULL)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classqx_1_1_qx_invalid_value_x.html">qx::QxInvalidValueX</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a7279b0e10759bb15a2eb7eea039cf6b0">qxValidate</a> (const QStringList &amp;groups=QStringList())</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classqx_1_1_qx_invalid_value_x.html">qx::QxInvalidValueX</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a07b99c4460be4408413166b06492ef3d">qxValidateRow</a> (int row, const QStringList &amp;groups=QStringList())</td></tr>
<tr><td colspan="2"><h2><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a4b446341a8433992a8455a93d9e3c4a1">init</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#af92896c3e924842f4c900ac9a0296841">initFrom</a> (<a class="el" href="classqx_1_1_ix_model.html">qx::IxModel</a> *pOther)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a204ff9dad3bb5a4e6c69220c630898c6">dumpModelImpl</a> (bool bJsonFormat) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QObject *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a5257abdaa73a20704942e4d70722a66a">cloneModelImpl</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#aa98a3e1c421a049b707d9c36b9f2df84">updateKey</a> (int row)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a9d18f4b9e70c6f79a83c51b14786f011">updateAllKeys</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QString&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a647c47ee31f30906b1a99cd112237721">toJson_Helper</a> (int row) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a053fb8de93fe00ff8f12e4b179da32b6">fromJson_Helper</a> (const QString &amp;json, int row)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QVariant&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a1147896b5ae49b7df7bdcf0db903728d">getRelationshipValues_Helper</a> (int row, const QString &amp;relation, bool bLoadFromDatabase, const QString &amp;sAppendRelations)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a4592d7e6530ce4b79330e2cde703bcb3">setRelationshipValues_Helper</a> (int row, const QString &amp;relation, const QVariant &amp;values)</td></tr>
<tr><td colspan="2"><h2><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classqx_1_1_qx_model.html#aaaf8416f552f17d358c8ad844bb7e66f">type_collection</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#af224b3a787360a263078e2d3c0ea843a">m_model</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Model associated to a class registered into QxOrm context.  <a href="#af224b3a787360a263078e2d3c0ea843a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a37883f4d4971163c4e4b9c8cc7fb29ef">m_lManualInsertIndex</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Index to insert manually items to the collection.  <a href="#a37883f4d4971163c4e4b9c8cc7fb29ef"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="friends"></a>
Friends</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a13dc1a1761db2fae12be18fc08f0e560">qx::model_view::detail::QxNestedModel&lt; T &gt;</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#a1cf44e137ca9d34536daab5b98889763">qx::model_view::detail::QxNestedModel_Generic&lt; T &gt;</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classqx_1_1_qx_model.html#aaf73787b2f7d986b534f72cf17628d65">qx::model_view::detail::QxNestedModel_Container</a></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><h3>template&lt;class T&gt;<br/>
class qx::QxModel&lt; T &gt;</h3>

<p>qx::QxModel&lt;T&gt; : all classes registered into QxOrm context can be used with Qt model/view architecture (Qt widgets and/or QML views) </p>
<p><b>QxModelView</b> module provides an easy way to work with Qt model/view engine with all classes registered into QxOrm context :</p>
<ul>
<li>Qt widgets : QTableView or QListView for example to display/modify a database table content ;</li>
<li>QML : each property defined in QxOrm context is exposed to QML engine : QxModelView module makes easier integration between QML and databases.</li>
</ul>
<p><a class="el" href="classqx_1_1_ix_model.html" title="qx::IxModel : interface to manage Qt model/view architecture with classes registered into QxOrm conte...">qx::IxModel</a> interface provides a generic way for all models linked to persistents classes registered into QxOrm context. All methods of this class prefixed by <em>qx</em> call functions from <a class="el" href="namespaceqx_1_1dao.html" title="Database communication used by persistence engine (ORM - Object Relational Mapping)">qx::dao</a> namespace and then communicate with database.</p>
<p>The <em>qxBlogModelView</em> sample project in <em>./test/</em> directory of QxOrm package shows how to create quickly a model and associate it to the Qt model/view engine (first with a Qt widget, then with a QML view).</p>
<p>1- Here is an example to display/modify data from 'author' table (go to qxBlog tutorial for 'author' class definition) in a QTableView : </p>
<div class="fragment"><pre class="fragment"><span class="comment">// Create a model and fetch all data from database</span>
<a class="code" href="classqx_1_1_ix_model.html" title="qx::IxModel : interface to manage Qt model/view architecture with classes registered into QxOrm conte...">qx::IxModel</a> * pModel = <span class="keyword">new</span> <a class="code" href="classqx_1_1_qx_model.html" title="qx::QxModel&lt;T&gt; : all classes registered into QxOrm context can be used with Qt model/view architectur...">qx::QxModel&lt;author&gt;</a>();
pModel-&gt;<a class="code" href="classqx_1_1_ix_model.html#a25d0c8ca205a900f9e9bca57196b5dd8">qxFetchAll</a>();

<span class="comment">// Associate the model to a QTableView and display it</span>
QTableView tableView;
tableView.setModel(pModel);
tableView.show();
</pre></div><p>2- Here is another example in QML (with Qt5, QxModelView module works fine with Qt4 too) : </p>
<div class="fragment"><pre class="fragment"><span class="comment">// Create a model and fetch all data from database</span>
<a class="code" href="classqx_1_1_ix_model.html" title="qx::IxModel : interface to manage Qt model/view architecture with classes registered into QxOrm conte...">qx::IxModel</a> * pModel = <span class="keyword">new</span> <a class="code" href="classqx_1_1_qx_model.html" title="qx::QxModel&lt;T&gt; : all classes registered into QxOrm context can be used with Qt model/view architectur...">qx::QxModel&lt;author&gt;</a>();
pModel-&gt;<a class="code" href="classqx_1_1_ix_model.html#a25d0c8ca205a900f9e9bca57196b5dd8">qxFetchAll</a>();

<span class="comment">// Associate the model to a QML view and display it</span>
QQuickView qmlView;
qmlView.rootContext()-&gt;setContextProperty(<span class="stringliteral">&quot;myModel&quot;</span>, pModel);
qmlView.setSource(QUrl(<span class="stringliteral">&quot;qrc:/documents/main.qml&quot;</span>));
qmlView.show();
</pre></div><p>And here is the 'main.qml' file content : </p>
<div class="fragment"><pre class="fragment"><span class="keyword">import</span> QtQuick 2.1
import QtQuick.Controls 1.0

Item {
   width: 400
   height: 300
   Row {
      height: 20
      spacing: 20
      Button {
         text: <span class="stringliteral">&quot;Clear&quot;</span>
         onClicked: myModel.clear()
      }
      Button {
         text: <span class="stringliteral">&quot;Fetch All&quot;</span>
         onClicked: myModel.qxFetchAll_()
      }
      Button {
         text: <span class="stringliteral">&quot;Save&quot;</span>
         onClicked: myModel.qxSave_()
      }
   }
   ListView {
      y: 30
      height: 270
      model: myModel
      delegate: Row {
         height: 20
         spacing: 10
         Text { text: <span class="stringliteral">&quot;id: &quot;</span> + author_id }
         TextField {
            text: name
            onTextChanged: name = text
         }
      }
   }
}
</pre></div><p>As you can see in the 'main.qml' file, 'author_id' and 'name' properties of 'author' model ('myModel' variable) can be automatically read and write (because they are registered into QxOrm context). Moreover, <a class="el" href="classqx_1_1_ix_model.html" title="qx::IxModel : interface to manage Qt model/view architecture with classes registered into QxOrm conte...">qx::IxModel</a> interface provides a list of methods for QML side (Q_INVOKABLE) to communicate with database : for example, the 'Save' button will save the model in database without having to write a C++ function.</p>
<p><b>Note :</b> a <b>QxEntityEditor</b> plugin generates automatically the code to manage models with relationships. Then it is possible to work with nested C++ models. </p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00162">162</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>
</div><hr/><h2>Member Typedef Documentation</h2>
<a class="anchor" id="aaaf8416f552f17d358c8ad844bb7e66f"></a><!-- doxytag: member="qx::QxModel::type_collection" ref="aaaf8416f552f17d358c8ad844bb7e66f" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classqx_1_1_qx_collection.html">qx::QxCollection</a>&lt;<a class="el" href="classqx_1_1_qx_model.html#a2d1a76e9a19ad15e645dbd6605fa7f3f">type_primary_key</a>, <a class="el" href="classqx_1_1_qx_model.html#aef823670a8fc66b5d0c8d887034b45a6">type_ptr</a>&gt; <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::<a class="el" href="classqx_1_1_qx_model.html#aaaf8416f552f17d358c8ad844bb7e66f">type_collection</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#a6d75075388005f70fc8a7a91688f5f66">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00173">173</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a2d1a76e9a19ad15e645dbd6605fa7f3f"></a><!-- doxytag: member="qx::QxModel::type_primary_key" ref="a2d1a76e9a19ad15e645dbd6605fa7f3f" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classqx_1_1trait_1_1get__primary__key.html">qx::trait::get_primary_key</a>&lt;T&gt;::type <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::<a class="el" href="classqx_1_1_qx_model.html#a2d1a76e9a19ad15e645dbd6605fa7f3f">type_primary_key</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#a0d5fd09e07ea3fb6842b8791d0a57a2a">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00172">172</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="aef823670a8fc66b5d0c8d887034b45a6"></a><!-- doxytag: member="qx::QxModel::type_ptr" ref="aef823670a8fc66b5d0c8d887034b45a6" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef qx_shared_ptr&lt;T&gt; <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::<a class="el" href="classqx_1_1_qx_model.html#aef823670a8fc66b5d0c8d887034b45a6">type_ptr</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#a8e6a0368bc703bee2560d26f09394307">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00171">171</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<hr/><h2>Member Enumeration Documentation</h2>
<a class="anchor" id="a300182d32beae72eb99a1e80f8f27c3d"></a><!-- doxytag: member="qx::QxModel::@9" ref="a300182d32beae72eb99a1e80f8f27c3d" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">anonymous enum</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="a300182d32beae72eb99a1e80f8f27c3daf3099edbe58e32e177628cac6c816e4f"></a><!-- doxytag: member="qx_is_valid" ref="a300182d32beae72eb99a1e80f8f27c3daf3099edbe58e32e177628cac6c816e4f" args="" -->qx_is_valid</em>&nbsp;</td><td>
</td></tr>
</table>
</dd>
</dl>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00175">175</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a8b67a5b81dc16016cfc55ca143657b0f"></a><!-- doxytag: member="qx::QxModel::QxModel" ref="a8b67a5b81dc16016cfc55ca143657b0f" args="(QObject *parent=0)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::<a class="el" href="classqx_1_1_qx_model.html">QxModel</a> </td>
          <td>(</td>
          <td class="paramtype">QObject *&#160;</td>
          <td class="paramname"><em>parent</em> = <code>0</code></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00184">184</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a383471d700890b1e4bc63369677ea557"></a><!-- doxytag: member="qx::QxModel::QxModel" ref="a383471d700890b1e4bc63369677ea557" args="(qx::IxModel *other, QObject *parent)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::<a class="el" href="classqx_1_1_qx_model.html">QxModel</a> </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classqx_1_1_ix_model.html">qx::IxModel</a> *&#160;</td>
          <td class="paramname"><em>other</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QObject *&#160;</td>
          <td class="paramname"><em>parent</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00185">185</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a6a66f0323e0f95dd5a900d12d8387fca"></a><!-- doxytag: member="qx::QxModel::~QxModel" ref="a6a66f0323e0f95dd5a900d12d8387fca" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::~<a class="el" href="classqx_1_1_qx_model.html">QxModel</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00186">186</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a5257abdaa73a20704942e4d70722a66a"></a><!-- doxytag: member="qx::QxModel::cloneModelImpl" ref="a5257abdaa73a20704942e4d70722a66a" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QObject* <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::cloneModelImpl </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline, protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#ab5ea8deb832d792900a39d190ea9ce95">qx::IxModel</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00640">640</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa90fdd2a234ca292b76b5cda59fab826"></a><!-- doxytag: member="qx::QxModel::data" ref="aa90fdd2a234ca292b76b5cda59fab826" args="(const QModelIndex &amp;index, int role=Qt::DisplayRole) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QVariant <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::data </td>
          <td>(</td>
          <td class="paramtype">const QModelIndex &amp;&#160;</td>
          <td class="paramname"><em>index</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>role</em> = <code>Qt::DisplayRole</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const<code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00212">212</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a204ff9dad3bb5a4e6c69220c630898c6"></a><!-- doxytag: member="qx::QxModel::dumpModelImpl" ref="a204ff9dad3bb5a4e6c69220c630898c6" args="(bool bJsonFormat) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::dumpModelImpl </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>bJsonFormat</em></td><td>)</td>
          <td> const<code> [inline, protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#a8a14e6ae93a49cd98fd5ee0b54c10b06">qx::IxModel</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00638">638</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a053fb8de93fe00ff8f12e4b179da32b6"></a><!-- doxytag: member="qx::QxModel::fromJson_Helper" ref="a053fb8de93fe00ff8f12e4b179da32b6" args="(const QString &amp;json, int row)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual bool <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::fromJson_Helper </td>
          <td>(</td>
          <td class="paramtype">const QString &amp;&#160;</td>
          <td class="paramname"><em>json</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>row</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#a1b81531b27b257908fceff49eec7af82">qx::IxModel</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00682">682</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a1147896b5ae49b7df7bdcf0db903728d"></a><!-- doxytag: member="qx::QxModel::getRelationshipValues_Helper" ref="a1147896b5ae49b7df7bdcf0db903728d" args="(int row, const QString &amp;relation, bool bLoadFromDatabase, const QString &amp;sAppendRelations)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QVariant <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::getRelationshipValues_Helper </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QString &amp;&#160;</td>
          <td class="paramname"><em>relation</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>bLoadFromDatabase</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QString &amp;&#160;</td>
          <td class="paramname"><em>sAppendRelations</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#aafbd788b85fa7ac4f632db1c16d7c65f">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#ae917e68b8da8d5ad7901dcea932e8759">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00706">706</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a4b446341a8433992a8455a93d9e3c4a1"></a><!-- doxytag: member="qx::QxModel::init" ref="a4b446341a8433992a8455a93d9e3c4a1" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::init </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00190">190</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="af92896c3e924842f4c900ac9a0296841"></a><!-- doxytag: member="qx::QxModel::initFrom" ref="af92896c3e924842f4c900ac9a0296841" args="(qx::IxModel *pOther)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::initFrom </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classqx_1_1_ix_model.html">qx::IxModel</a> *&#160;</td>
          <td class="paramname"><em>pOther</em></td><td>)</td>
          <td><code> [inline, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00200">200</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a0084426b5d4f8b15f0a0f0c34c78b3d9"></a><!-- doxytag: member="qx::QxModel::insertRows" ref="a0084426b5d4f8b15f0a0f0c34c78b3d9" args="(int row, int count, const QModelIndex &amp;parent=QModelIndex())" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual bool <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::insertRows </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QModelIndex &amp;&#160;</td>
          <td class="paramname"><em>parent</em> = <code>QModelIndex()</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00264">264</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="ab543c16cd10277f7c9c4231cf4857801"></a><!-- doxytag: member="qx::QxModel::qxCount" ref="ab543c16cd10277f7c9c4231cf4857801" args="(const qx::QxSqlQuery &amp;query=qx::QxSqlQuery(), QSqlDatabase *pDatabase=NULL)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual long <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxCount </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a> &amp;&#160;</td>
          <td class="paramname"><em>query</em> = <code><a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a>()</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QSqlDatabase *&#160;</td>
          <td class="paramname"><em>pDatabase</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return the number of lines in the table (database) mapped to the C++ class T (registered into QxOrm context) and filtered by a user SQL query. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">query</td><td>Define a user SQL query added to default SQL query builded by QxOrm library (optional parameter) </td></tr>
    <tr><td class="paramname">pDatabase</td><td>Connection to database (you can manage your own connection pool for example, you can also define a transaction, etc.); if NULL, a valid connection for the current thread is provided by <a class="el" href="classqx_1_1_qx_sql_database.html" title="qx::QxSqlDatabase : define all parameters to connect to database and retrieve a valid connection by t...">qx::QxSqlDatabase</a> singleton class (optional parameter) </td></tr>
  </table>
  </dd>
</dl>

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#a8e5155347175ac0aa3b8d1ed6bcb973a">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#ae46142dd9ed9c6823af1a0e2461b68f5">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00289">289</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="ac62fc3913e4662c103db997c848afd1a"></a><!-- doxytag: member="qx::QxModel::qxCount" ref="ac62fc3913e4662c103db997c848afd1a" args="(long &amp;lCount, const qx::QxSqlQuery &amp;query=qx::QxSqlQuery(), QSqlDatabase *pDatabase=NULL)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QSqlError <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxCount </td>
          <td>(</td>
          <td class="paramtype">long &amp;&#160;</td>
          <td class="paramname"><em>lCount</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a> &amp;&#160;</td>
          <td class="paramname"><em>query</em> = <code><a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a>()</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QSqlDatabase *&#160;</td>
          <td class="paramname"><em>pDatabase</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return the number of lines in the table (database) mapped to the C++ class T (registered into QxOrm context) and filtered by a user SQL query. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">lCount</td><td>Output parameter with the number of lines in the table associated to the SQL query </td></tr>
    <tr><td class="paramname">query</td><td>Define a user SQL query added to default SQL query builded by QxOrm library (optional parameter) </td></tr>
    <tr><td class="paramname">pDatabase</td><td>Connection to database (you can manage your own connection pool for example, you can also define a transaction, etc.); if NULL, a valid connection for the current thread is provided by <a class="el" href="classqx_1_1_qx_sql_database.html" title="qx::QxSqlDatabase : define all parameters to connect to database and retrieve a valid connection by t...">qx::QxSqlDatabase</a> singleton class (optional parameter) </td></tr>
  </table>
  </dd>
</dl>

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#af54d086824f52b68d15d433ac6f70976">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#ac86f8537fd4c156bd3c8af5e61e8405d">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00300">300</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a011b3409d8acc14a074629cf024f0ca3"></a><!-- doxytag: member="qx::QxModel::qxDeleteAll" ref="a011b3409d8acc14a074629cf024f0ca3" args="(QSqlDatabase *pDatabase=NULL)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QSqlError <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxDeleteAll </td>
          <td>(</td>
          <td class="paramtype">QSqlDatabase *&#160;</td>
          <td class="paramname"><em>pDatabase</em> = <code>NULL</code></td><td>)</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Delete all lines of a table (database) mapped to a C++ class T (registered into QxOrm context), if no error occurred then you should clear the model. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pDatabase</td><td>Connection to database (you can manage your own connection pool for example, you can also define a transaction, etc.); if NULL, a valid connection for the current thread is provided by <a class="el" href="classqx_1_1_qx_sql_database.html" title="qx::QxSqlDatabase : define all parameters to connect to database and retrieve a valid connection by t...">qx::QxSqlDatabase</a> singleton class (optional parameter) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Empty QSqlError object (from Qt library) if no error occurred; otherwise QSqlError contains a description of database error executing SQL query </dd></dl>

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#a95c3eab593dd7733742dfb12eb2e2d15">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#ac8e4ad35f6724cbeb390f51328ca2847">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00517">517</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="ad2ea10ec9cd2b43f1ef9e1d0e324e564"></a><!-- doxytag: member="qx::QxModel::qxDeleteById" ref="ad2ea10ec9cd2b43f1ef9e1d0e324e564" args="(const QVariant &amp;id, QSqlDatabase *pDatabase=NULL)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QSqlError <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxDeleteById </td>
          <td>(</td>
          <td class="paramtype">const QVariant &amp;&#160;</td>
          <td class="paramname"><em>id</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QSqlDatabase *&#160;</td>
          <td class="paramname"><em>pDatabase</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Delete a line of a table (database) mapped to a C++ object of type T (registered into QxOrm context), if no error occurred then you should remove row from the model. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">id</td><td>Row id to be deleted from database </td></tr>
    <tr><td class="paramname">pDatabase</td><td>Connection to database (you can manage your own connection pool for example, you can also define a transaction, etc.); if NULL, a valid connection for the current thread is provided by <a class="el" href="classqx_1_1_qx_sql_database.html" title="qx::QxSqlDatabase : define all parameters to connect to database and retrieve a valid connection by t...">qx::QxSqlDatabase</a> singleton class (optional parameter) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Empty QSqlError object (from Qt library) if no error occurred; otherwise QSqlError contains a description of database error executing SQL query </dd></dl>

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#addd42b8082df6c65e65715fed6440098">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#a0694dc6874ef422e64f8545953f318af">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00502">502</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a87b34ae02a5ef623534230c2cb82ec87"></a><!-- doxytag: member="qx::QxModel::qxDeleteByQuery" ref="a87b34ae02a5ef623534230c2cb82ec87" args="(const qx::QxSqlQuery &amp;query, QSqlDatabase *pDatabase=NULL)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QSqlError <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxDeleteByQuery </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a> &amp;&#160;</td>
          <td class="paramname"><em>query</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QSqlDatabase *&#160;</td>
          <td class="paramname"><em>pDatabase</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Delete all lines of a table (database) mapped to a C++ class T (registered into QxOrm context) and filtered by a user SQL query, if no error occurred then you should refresh the model. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">query</td><td>Define a user SQL query added to default SQL query builded by QxOrm library </td></tr>
    <tr><td class="paramname">pDatabase</td><td>Connection to database (you can manage your own connection pool for example, you can also define a transaction, etc.); if NULL, a valid connection for the current thread is provided by <a class="el" href="classqx_1_1_qx_sql_database.html" title="qx::QxSqlDatabase : define all parameters to connect to database and retrieve a valid connection by t...">qx::QxSqlDatabase</a> singleton class (optional parameter) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Empty QSqlError object (from Qt library) if no error occurred; otherwise QSqlError contains a description of database error executing SQL query </dd></dl>

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#a27c50117c2e289e0e916a10ea07af105">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#a56c614063256f28d9c5ec1154e3923d3">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00529">529</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a5650b97f0190a6a044e95185f7f329c6"></a><!-- doxytag: member="qx::QxModel::qxDeleteRow" ref="a5650b97f0190a6a044e95185f7f329c6" args="(int row, QSqlDatabase *pDatabase=NULL)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QSqlError <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxDeleteRow </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QSqlDatabase *&#160;</td>
          <td class="paramname"><em>pDatabase</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Delete in database the item at line row in the model, if no error occurred then you should remove row from the model. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">row</td><td>Delete in database the item in the model at line row </td></tr>
    <tr><td class="paramname">pDatabase</td><td>Connection to database (you can manage your own connection pool for example, you can also define a transaction, etc.); if NULL, a valid connection for the current thread is provided by <a class="el" href="classqx_1_1_qx_sql_database.html" title="qx::QxSqlDatabase : define all parameters to connect to database and retrieve a valid connection by t...">qx::QxSqlDatabase</a> singleton class (optional parameter) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Empty QSqlError object (from Qt library) if no error occurred; otherwise QSqlError contains a description of database error executing SQL query </dd></dl>

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#a1b22d274f2702333d61c6bbc93be55aa">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#ad716687570e642cc8945209cbca5f654">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00541">541</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a3461b11d9fd96e205613edeaeba069e7"></a><!-- doxytag: member="qx::QxModel::qxDestroyAll" ref="a3461b11d9fd96e205613edeaeba069e7" args="(QSqlDatabase *pDatabase=NULL)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QSqlError <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxDestroyAll </td>
          <td>(</td>
          <td class="paramtype">QSqlDatabase *&#160;</td>
          <td class="paramname"><em>pDatabase</em> = <code>NULL</code></td><td>)</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Delete all lines of a table (even if a logical delete is defined) mapped to a C++ class T (registered into QxOrm context), if no error occurred then you should clear the model. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pDatabase</td><td>Connection to database (you can manage your own connection pool for example, you can also define a transaction, etc.); if NULL, a valid connection for the current thread is provided by <a class="el" href="classqx_1_1_qx_sql_database.html" title="qx::QxSqlDatabase : define all parameters to connect to database and retrieve a valid connection by t...">qx::QxSqlDatabase</a> singleton class (optional parameter) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Empty QSqlError object (from Qt library) if no error occurred; otherwise QSqlError contains a description of database error executing SQL query </dd></dl>

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#a0e0cf90cd26b0f667e07b3498ce01adc">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#a6318e827bad56e4f0a3a63102452ce68">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00570">570</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a4e8d847120cab3c823d97253daa9cabf"></a><!-- doxytag: member="qx::QxModel::qxDestroyById" ref="a4e8d847120cab3c823d97253daa9cabf" args="(const QVariant &amp;id, QSqlDatabase *pDatabase=NULL)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QSqlError <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxDestroyById </td>
          <td>(</td>
          <td class="paramtype">const QVariant &amp;&#160;</td>
          <td class="paramname"><em>id</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QSqlDatabase *&#160;</td>
          <td class="paramname"><em>pDatabase</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Delete a line of a table (even if a logical delete is defined) mapped to a C++ object of type T (registered into QxOrm context), if no error occurred then you should remove row from the model. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">id</td><td>Row id to be deleted from database </td></tr>
    <tr><td class="paramname">pDatabase</td><td>Connection to database (you can manage your own connection pool for example, you can also define a transaction, etc.); if NULL, a valid connection for the current thread is provided by <a class="el" href="classqx_1_1_qx_sql_database.html" title="qx::QxSqlDatabase : define all parameters to connect to database and retrieve a valid connection by t...">qx::QxSqlDatabase</a> singleton class (optional parameter) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Empty QSqlError object (from Qt library) if no error occurred; otherwise QSqlError contains a description of database error executing SQL query </dd></dl>

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#af531a3b49a073371ccc676761c6a1477">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#a667c3df48ce891808338d982a013bf91">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00555">555</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="ab23d15ff34b124f383960d8948285877"></a><!-- doxytag: member="qx::QxModel::qxDestroyByQuery" ref="ab23d15ff34b124f383960d8948285877" args="(const qx::QxSqlQuery &amp;query, QSqlDatabase *pDatabase=NULL)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QSqlError <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxDestroyByQuery </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a> &amp;&#160;</td>
          <td class="paramname"><em>query</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QSqlDatabase *&#160;</td>
          <td class="paramname"><em>pDatabase</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Delete all lines of a table (even if a logical delete is defined) mapped to a C++ class T (registered into QxOrm context) and filtered by a user SQL query, if no error occurred then you should refresh the model. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">query</td><td>Define a user SQL query added to default SQL query builded by QxOrm library </td></tr>
    <tr><td class="paramname">pDatabase</td><td>Connection to database (you can manage your own connection pool for example, you can also define a transaction, etc.); if NULL, a valid connection for the current thread is provided by <a class="el" href="classqx_1_1_qx_sql_database.html" title="qx::QxSqlDatabase : define all parameters to connect to database and retrieve a valid connection by t...">qx::QxSqlDatabase</a> singleton class (optional parameter) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Empty QSqlError object (from Qt library) if no error occurred; otherwise QSqlError contains a description of database error executing SQL query </dd></dl>

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#a168b8c42912ef80ee43e93ba973e20d8">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#a5181ca7717672d35d93021286e142e12">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00582">582</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a4b533b2f1f8634db23101e7a21d7ea06"></a><!-- doxytag: member="qx::QxModel::qxDestroyRow" ref="a4b533b2f1f8634db23101e7a21d7ea06" args="(int row, QSqlDatabase *pDatabase=NULL)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QSqlError <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxDestroyRow </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QSqlDatabase *&#160;</td>
          <td class="paramname"><em>pDatabase</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Delete in database (even if a logical delete is defined) the item at line row in the model, if no error occurred then you should remove row from the model. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">row</td><td>Delete in database the item in the model at line row </td></tr>
    <tr><td class="paramname">pDatabase</td><td>Connection to database (you can manage your own connection pool for example, you can also define a transaction, etc.); if NULL, a valid connection for the current thread is provided by <a class="el" href="classqx_1_1_qx_sql_database.html" title="qx::QxSqlDatabase : define all parameters to connect to database and retrieve a valid connection by t...">qx::QxSqlDatabase</a> singleton class (optional parameter) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Empty QSqlError object (from Qt library) if no error occurred; otherwise QSqlError contains a description of database error executing SQL query </dd></dl>

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#a47f0c44ea08e45e0a4282328c067ccf6">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#a3b0c73818a2354f2f61e8795f2d4f3cf">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00594">594</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="ab11ea058c052afca523b3a49eaeb75ea"></a><!-- doxytag: member="qx::QxModel::qxExecuteQuery" ref="ab11ea058c052afca523b3a49eaeb75ea" args="(qx::QxSqlQuery &amp;query, QSqlDatabase *pDatabase=NULL)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QSqlError <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxExecuteQuery </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a> &amp;&#160;</td>
          <td class="paramname"><em>query</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QSqlDatabase *&#160;</td>
          <td class="paramname"><em>pDatabase</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#af50df9cc3aaf3f08b126d64dbfa55bc1">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#ace0e30235c884481010a1a967959aae5">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00602">602</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a500a9bb91d16b10af29419d738e398b9"></a><!-- doxytag: member="qx::QxModel::qxExist" ref="a500a9bb91d16b10af29419d738e398b9" args="(const QVariant &amp;id, QSqlDatabase *pDatabase=NULL)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="_qx_bool_8h.html#a40069a4245b458585997dadea3a86b33">qx_bool</a> <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxExist </td>
          <td>(</td>
          <td class="paramtype">const QVariant &amp;&#160;</td>
          <td class="paramname"><em>id</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QSqlDatabase *&#160;</td>
          <td class="paramname"><em>pDatabase</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#ae331c6d5c8e23173d3699c2c43125e8d">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#ab6684e19a712b3426aa82742097785c7">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00615">615</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a859860c6ada5c046f2f2d8fbdb5ebc60"></a><!-- doxytag: member="qx::QxModel::qxFetchAll" ref="a859860c6ada5c046f2f2d8fbdb5ebc60" args="(const QStringList &amp;relation=QStringList(), QSqlDatabase *pDatabase=NULL)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QSqlError <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxFetchAll </td>
          <td>(</td>
          <td class="paramtype">const QStringList &amp;&#160;</td>
          <td class="paramname"><em>relation</em> = <code>QStringList()</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QSqlDatabase *&#160;</td>
          <td class="paramname"><em>pDatabase</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Clear the model and fetch a list of objects (retrieve all elements and properties associated) of type T (container registered into QxOrm context) mapped to a table in the database. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">relation</td><td>List of relationships keys to be fetched (eager fetch instead of default lazy fetch for a relation) : use "|" separator to put many relationships keys into this parameter </td></tr>
    <tr><td class="paramname">pDatabase</td><td>Connection to database (you can manage your own connection pool for example, you can also define a transaction, etc.); if NULL, a valid connection for the current thread is provided by <a class="el" href="classqx_1_1_qx_sql_database.html" title="qx::QxSqlDatabase : define all parameters to connect to database and retrieve a valid connection by t...">qx::QxSqlDatabase</a> singleton class (optional parameter) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Empty QSqlError object (from Qt library) if no error occurred; otherwise QSqlError contains a description of database error executing SQL query </dd></dl>

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#a25d0c8ca205a900f9e9bca57196b5dd8">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#a5c5bb6677c6f194c7a2ae3f2a453cdb1">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00338">338</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a6b29016768ce825825912d21f2791e4f"></a><!-- doxytag: member="qx::QxModel::qxFetchById" ref="a6b29016768ce825825912d21f2791e4f" args="(const QVariant &amp;id, const QStringList &amp;relation=QStringList(), QSqlDatabase *pDatabase=NULL)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QSqlError <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxFetchById </td>
          <td>(</td>
          <td class="paramtype">const QVariant &amp;&#160;</td>
          <td class="paramname"><em>id</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QStringList &amp;&#160;</td>
          <td class="paramname"><em>relation</em> = <code>QStringList()</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QSqlDatabase *&#160;</td>
          <td class="paramname"><em>pDatabase</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Clear the model and fetch an object (retrieve all its properties) of type T (registered into QxOrm context) mapped to a table in the database. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">id</td><td>Row id to be fetched (retrieve all properties from database) </td></tr>
    <tr><td class="paramname">relation</td><td>List of relationships keys to be fetched (eager fetch instead of default lazy fetch for a relation) : use "|" separator to put many relationships keys into this parameter </td></tr>
    <tr><td class="paramname">pDatabase</td><td>Connection to database (you can manage your own connection pool for example, you can also define a transaction, etc.); if NULL, a valid connection for the current thread is provided by <a class="el" href="classqx_1_1_qx_sql_database.html" title="qx::QxSqlDatabase : define all parameters to connect to database and retrieve a valid connection by t...">qx::QxSqlDatabase</a> singleton class (optional parameter) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Empty QSqlError object (from Qt library) if no error occurred; otherwise QSqlError contains a description of database error executing SQL query </dd></dl>

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#a5a1842532a2f87a509142bc1f298cc53">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#a4da259fab037cc8286d14f05c349ce34">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00313">313</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="aee84c03d9c6e703224f7537bd96c9707"></a><!-- doxytag: member="qx::QxModel::qxFetchByQuery" ref="aee84c03d9c6e703224f7537bd96c9707" args="(const qx::QxSqlQuery &amp;query, const QStringList &amp;relation=QStringList(), QSqlDatabase *pDatabase=NULL)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QSqlError <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxFetchByQuery </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a> &amp;&#160;</td>
          <td class="paramname"><em>query</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QStringList &amp;&#160;</td>
          <td class="paramname"><em>relation</em> = <code>QStringList()</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QSqlDatabase *&#160;</td>
          <td class="paramname"><em>pDatabase</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Clear the model and fetch a list of objects (retrieve all elements and properties associated) of type T (container registered into QxOrm context) mapped to a table in the database and filtered by a user SQL query. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">query</td><td>Define a user SQL query added to default SQL query builded by QxOrm library </td></tr>
    <tr><td class="paramname">relation</td><td>List of relationships keys to be fetched (eager fetch instead of default lazy fetch for a relation) : use "|" separator to put many relationships keys into this parameter </td></tr>
    <tr><td class="paramname">pDatabase</td><td>Connection to database (you can manage your own connection pool for example, you can also define a transaction, etc.); if NULL, a valid connection for the current thread is provided by <a class="el" href="classqx_1_1_qx_sql_database.html" title="qx::QxSqlDatabase : define all parameters to connect to database and retrieve a valid connection by t...">qx::QxSqlDatabase</a> singleton class (optional parameter) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Empty QSqlError object (from Qt library) if no error occurred; otherwise QSqlError contains a description of database error executing SQL query </dd></dl>

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#a2d4a75f76a372e7084e018cb9519a31e">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#ae1e8e0770048a3d9a1c65224525907c8">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00359">359</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a92d80b8a5a9afa7b8d3389d1c8a5d35f"></a><!-- doxytag: member="qx::QxModel::qxFetchRow" ref="a92d80b8a5a9afa7b8d3389d1c8a5d35f" args="(int row, const QStringList &amp;relation=QStringList(), QSqlDatabase *pDatabase=NULL)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QSqlError <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxFetchRow </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QStringList &amp;&#160;</td>
          <td class="paramname"><em>relation</em> = <code>QStringList()</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QSqlDatabase *&#160;</td>
          <td class="paramname"><em>pDatabase</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get an item in the model at line row and fetch all its properties mapped to a table in the database, then all views attached to this model are automatically updated. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">row</td><td>Get an item in the model at line row </td></tr>
    <tr><td class="paramname">relation</td><td>List of relationships keys to be fetched (eager fetch instead of default lazy fetch for a relation) : use "|" separator to put many relationships keys into this parameter </td></tr>
    <tr><td class="paramname">pDatabase</td><td>Connection to database (you can manage your own connection pool for example, you can also define a transaction, etc.); if NULL, a valid connection for the current thread is provided by <a class="el" href="classqx_1_1_qx_sql_database.html" title="qx::QxSqlDatabase : define all parameters to connect to database and retrieve a valid connection by t...">qx::QxSqlDatabase</a> singleton class (optional parameter) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Empty QSqlError object (from Qt library) if no error occurred; otherwise QSqlError contains a description of database error executing SQL query </dd></dl>

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#af9eb72e64a508442f05d0abc38bcbc8b">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#ae5ed4a8ed5892f150f4bd3f2a2647be8">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00380">380</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a2c5e298517e16c9fc8b241fe77e9b27a"></a><!-- doxytag: member="qx::QxModel::qxInsert" ref="a2c5e298517e16c9fc8b241fe77e9b27a" args="(const QStringList &amp;relation=QStringList(), QSqlDatabase *pDatabase=NULL)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QSqlError <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxInsert </td>
          <td>(</td>
          <td class="paramtype">const QStringList &amp;&#160;</td>
          <td class="paramname"><em>relation</em> = <code>QStringList()</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QSqlDatabase *&#160;</td>
          <td class="paramname"><em>pDatabase</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Insert all items in the model into database. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">relation</td><td>List of relationships keys to be inserted in others tables of database : use "|" separator to put many relationships keys into this parameter </td></tr>
    <tr><td class="paramname">pDatabase</td><td>Connection to database (you can manage your own connection pool for example, you can also define a transaction, etc.); if NULL, a valid connection for the current thread is provided by <a class="el" href="classqx_1_1_qx_sql_database.html" title="qx::QxSqlDatabase : define all parameters to connect to database and retrieve a valid connection by t...">qx::QxSqlDatabase</a> singleton class (optional parameter) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Empty QSqlError object (from Qt library) if no error occurred; otherwise QSqlError contains a description of database error executing SQL query </dd></dl>

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#ae5ca4cb971947912cd8acc6ef00eeaeb">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#a977df8c09bc3e41acb9f9b7aad93ad25">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00401">401</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a93b788ce05b2eed6acb163547d0a3176"></a><!-- doxytag: member="qx::QxModel::qxInsertRow" ref="a93b788ce05b2eed6acb163547d0a3176" args="(int row, const QStringList &amp;relation=QStringList(), QSqlDatabase *pDatabase=NULL)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QSqlError <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxInsertRow </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QStringList &amp;&#160;</td>
          <td class="paramname"><em>relation</em> = <code>QStringList()</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QSqlDatabase *&#160;</td>
          <td class="paramname"><em>pDatabase</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Insert an item of the model at line row into database. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">row</td><td>Insert an item in the model at line row </td></tr>
    <tr><td class="paramname">relation</td><td>List of relationships keys to be inserted in others tables of database : use "|" separator to put many relationships keys into this parameter </td></tr>
    <tr><td class="paramname">pDatabase</td><td>Connection to database (you can manage your own connection pool for example, you can also define a transaction, etc.); if NULL, a valid connection for the current thread is provided by <a class="el" href="classqx_1_1_qx_sql_database.html" title="qx::QxSqlDatabase : define all parameters to connect to database and retrieve a valid connection by t...">qx::QxSqlDatabase</a> singleton class (optional parameter) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Empty QSqlError object (from Qt library) if no error occurred; otherwise QSqlError contains a description of database error executing SQL query </dd></dl>

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#a92677624e490d35886cd8a46849eee93">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#a7141746bcb32da616d9a1bf70930c72b">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00417">417</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a996a650f41e2b871975cea5d1d5c10f5"></a><!-- doxytag: member="qx::QxModel::qxSave" ref="a996a650f41e2b871975cea5d1d5c10f5" args="(const QStringList &amp;relation=QStringList(), QSqlDatabase *pDatabase=NULL)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QSqlError <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxSave </td>
          <td>(</td>
          <td class="paramtype">const QStringList &amp;&#160;</td>
          <td class="paramname"><em>relation</em> = <code>QStringList()</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QSqlDatabase *&#160;</td>
          <td class="paramname"><em>pDatabase</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Save all items (insert or update) in the model into database. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">relation</td><td>List of relationships keys to be inserted in others tables of database : use "|" separator to put many relationships keys into this parameter </td></tr>
    <tr><td class="paramname">pDatabase</td><td>Connection to database (you can manage your own connection pool for example, you can also define a transaction, etc.); if NULL, a valid connection for the current thread is provided by <a class="el" href="classqx_1_1_qx_sql_database.html" title="qx::QxSqlDatabase : define all parameters to connect to database and retrieve a valid connection by t...">qx::QxSqlDatabase</a> singleton class (optional parameter) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Empty QSqlError object (from Qt library) if no error occurred; otherwise QSqlError contains a description of database error executing SQL query </dd></dl>

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#ae3785619233c55608a6b3c508f7ff0cc">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#a59ef8ce2d68d0c1daceac25775bf7e58">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00469">469</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a6c2d4497957d25bacebd440047d3ba59"></a><!-- doxytag: member="qx::QxModel::qxSaveRow" ref="a6c2d4497957d25bacebd440047d3ba59" args="(int row, const QStringList &amp;relation=QStringList(), QSqlDatabase *pDatabase=NULL)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QSqlError <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxSaveRow </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QStringList &amp;&#160;</td>
          <td class="paramname"><em>relation</em> = <code>QStringList()</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QSqlDatabase *&#160;</td>
          <td class="paramname"><em>pDatabase</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Save an item of the model at line row into database. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">row</td><td>Save an item (insert or update) in the model at line row </td></tr>
    <tr><td class="paramname">relation</td><td>List of relationships keys to be inserted in others tables of database : use "|" separator to put many relationships keys into this parameter </td></tr>
    <tr><td class="paramname">pDatabase</td><td>Connection to database (you can manage your own connection pool for example, you can also define a transaction, etc.); if NULL, a valid connection for the current thread is provided by <a class="el" href="classqx_1_1_qx_sql_database.html" title="qx::QxSqlDatabase : define all parameters to connect to database and retrieve a valid connection by t...">qx::QxSqlDatabase</a> singleton class (optional parameter) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Empty QSqlError object (from Qt library) if no error occurred; otherwise QSqlError contains a description of database error executing SQL query </dd></dl>

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#a4719b850954a7823169966a7d35133e7">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#ae3f074858ae605e76d09d0b363aaaa83">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00485">485</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="aca89226b12bea5293216506376e6ae79"></a><!-- doxytag: member="qx::QxModel::qxUpdate" ref="aca89226b12bea5293216506376e6ae79" args="(const qx::QxSqlQuery &amp;query=qx::QxSqlQuery(), const QStringList &amp;relation=QStringList(), QSqlDatabase *pDatabase=NULL)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QSqlError <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxUpdate </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a> &amp;&#160;</td>
          <td class="paramname"><em>query</em> = <code><a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a>()</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QStringList &amp;&#160;</td>
          <td class="paramname"><em>relation</em> = <code>QStringList()</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QSqlDatabase *&#160;</td>
          <td class="paramname"><em>pDatabase</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Update all items in the model into database. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">query</td><td>Define a user SQL query added to default SQL query builded by QxOrm library </td></tr>
    <tr><td class="paramname">relation</td><td>List of relationships keys to be inserted in others tables of database : use "|" separator to put many relationships keys into this parameter </td></tr>
    <tr><td class="paramname">pDatabase</td><td>Connection to database (you can manage your own connection pool for example, you can also define a transaction, etc.); if NULL, a valid connection for the current thread is provided by <a class="el" href="classqx_1_1_qx_sql_database.html" title="qx::QxSqlDatabase : define all parameters to connect to database and retrieve a valid connection by t...">qx::QxSqlDatabase</a> singleton class (optional parameter) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Empty QSqlError object (from Qt library) if no error occurred; otherwise QSqlError contains a description of database error executing SQL query </dd></dl>

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#aaf847d17ca389f734cf33806002aa4d0">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#a3f2536e90532a95b95f3e4184d75fbbb">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00435">435</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="ad4e848b1a9bc24cb724a9416fd1d76a0"></a><!-- doxytag: member="qx::QxModel::qxUpdateRow" ref="ad4e848b1a9bc24cb724a9416fd1d76a0" args="(int row, const qx::QxSqlQuery &amp;query=qx::QxSqlQuery(), const QStringList &amp;relation=QStringList(), QSqlDatabase *pDatabase=NULL)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QSqlError <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxUpdateRow </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a> &amp;&#160;</td>
          <td class="paramname"><em>query</em> = <code><a class="el" href="classqx_1_1_qx_sql_query.html">qx::QxSqlQuery</a>()</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QStringList &amp;&#160;</td>
          <td class="paramname"><em>relation</em> = <code>QStringList()</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QSqlDatabase *&#160;</td>
          <td class="paramname"><em>pDatabase</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Update an item of the model at line row into database. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">row</td><td>Update an item in the model at line row </td></tr>
    <tr><td class="paramname">query</td><td>Define a user SQL query added to default SQL query builded by QxOrm library </td></tr>
    <tr><td class="paramname">relation</td><td>List of relationships keys to be inserted in others tables of database : use "|" separator to put many relationships keys into this parameter </td></tr>
    <tr><td class="paramname">pDatabase</td><td>Connection to database (you can manage your own connection pool for example, you can also define a transaction, etc.); if NULL, a valid connection for the current thread is provided by <a class="el" href="classqx_1_1_qx_sql_database.html" title="qx::QxSqlDatabase : define all parameters to connect to database and retrieve a valid connection by t...">qx::QxSqlDatabase</a> singleton class (optional parameter) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Empty QSqlError object (from Qt library) if no error occurred; otherwise QSqlError contains a description of database error executing SQL query </dd></dl>

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#aee72437e2ab408a0378d3ef0bd0f9f65">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#a6223f182711b842d1f27796931e3b3c5">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00452">452</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a7279b0e10759bb15a2eb7eea039cf6b0"></a><!-- doxytag: member="qx::QxModel::qxValidate" ref="a7279b0e10759bb15a2eb7eea039cf6b0" args="(const QStringList &amp;groups=QStringList())" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classqx_1_1_qx_invalid_value_x.html">qx::QxInvalidValueX</a> <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxValidate </td>
          <td>(</td>
          <td class="paramtype">const QStringList &amp;&#160;</td>
          <td class="paramname"><em>groups</em> = <code>QStringList()</code></td><td>)</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#a501568ee531d88a7bc9875e117944209">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#afe3fcf1f096a4ca66b3e1dc4c6417691">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00624">624</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a07b99c4460be4408413166b06492ef3d"></a><!-- doxytag: member="qx::QxModel::qxValidateRow" ref="a07b99c4460be4408413166b06492ef3d" args="(int row, const QStringList &amp;groups=QStringList())" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classqx_1_1_qx_invalid_value_x.html">qx::QxInvalidValueX</a> <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::qxValidateRow </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QStringList &amp;&#160;</td>
          <td class="paramname"><em>groups</em> = <code>QStringList()</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#a23cd2c6b210b274a2c28be679ed22117">qx::IxModel</a>.</p>

<p>Reimplemented in <a class="el" href="classqx_1_1_qx_model_service.html#afaeda251b47b90fa15f65009de330639">qx::QxModelService&lt; T, S &gt;</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00629">629</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a8941b0324ac03f964e790c3472dcecd6"></a><!-- doxytag: member="qx::QxModel::setData" ref="a8941b0324ac03f964e790c3472dcecd6" args="(const QModelIndex &amp;index, const QVariant &amp;value, int role=Qt::EditRole)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual bool <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::setData </td>
          <td>(</td>
          <td class="paramtype">const QModelIndex &amp;&#160;</td>
          <td class="paramname"><em>index</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariant &amp;&#160;</td>
          <td class="paramname"><em>value</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>role</em> = <code>Qt::EditRole</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00232">232</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a4592d7e6530ce4b79330e2cde703bcb3"></a><!-- doxytag: member="qx::QxModel::setRelationshipValues_Helper" ref="a4592d7e6530ce4b79330e2cde703bcb3" args="(int row, const QString &amp;relation, const QVariant &amp;values)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual bool <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::setRelationshipValues_Helper </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QString &amp;&#160;</td>
          <td class="paramname"><em>relation</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariant &amp;&#160;</td>
          <td class="paramname"><em>values</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#a7a8df107477c8c0fd11a42716afc4888">qx::IxModel</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00732">732</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a647c47ee31f30906b1a99cd112237721"></a><!-- doxytag: member="qx::QxModel::toJson_Helper" ref="a647c47ee31f30906b1a99cd112237721" args="(int row) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual QString <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::toJson_Helper </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>row</em></td><td>)</td>
          <td> const<code> [inline, protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Implements <a class="el" href="classqx_1_1_ix_model.html#a2929e1b95bcaa7ccb574829294d38600">qx::IxModel</a>.</p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00674">674</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a9d18f4b9e70c6f79a83c51b14786f011"></a><!-- doxytag: member="qx::QxModel::updateAllKeys" ref="a9d18f4b9e70c6f79a83c51b14786f011" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::updateAllKeys </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00664">664</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa98a3e1c421a049b707d9c36b9f2df84"></a><!-- doxytag: member="qx::QxModel::updateKey" ref="aa98a3e1c421a049b707d9c36b9f2df84" args="(int row)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::updateKey </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>row</em></td><td>)</td>
          <td><code> [inline, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00648">648</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<hr/><h2>Friends And Related Function Documentation</h2>
<a class="anchor" id="a13dc1a1761db2fae12be18fc08f0e560"></a><!-- doxytag: member="qx::QxModel::qx::model_view::detail::QxNestedModel&lt; T &gt;" ref="a13dc1a1761db2fae12be18fc08f0e560" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">friend struct <a class="el" href="structqx_1_1model__view_1_1detail_1_1_qx_nested_model.html">qx::model_view::detail::QxNestedModel</a>&lt; T &gt;<code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00165">165</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="aaf73787b2f7d986b534f72cf17628d65"></a><!-- doxytag: member="qx::QxModel::qx::model_view::detail::QxNestedModel_Container" ref="aaf73787b2f7d986b534f72cf17628d65" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">friend struct <a class="el" href="structqx_1_1model__view_1_1detail_1_1_qx_nested_model___container.html">qx::model_view::detail::QxNestedModel_Container</a><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00167">167</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="a1cf44e137ca9d34536daab5b98889763"></a><!-- doxytag: member="qx::QxModel::qx::model_view::detail::QxNestedModel_Generic&lt; T &gt;" ref="a1cf44e137ca9d34536daab5b98889763" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">friend struct <a class="el" href="structqx_1_1model__view_1_1detail_1_1_qx_nested_model___generic.html">qx::model_view::detail::QxNestedModel_Generic</a>&lt; T &gt;<code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00166">166</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a37883f4d4971163c4e4b9c8cc7fb29ef"></a><!-- doxytag: member="qx::QxModel::m_lManualInsertIndex" ref="a37883f4d4971163c4e4b9c8cc7fb29ef" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">long <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::<a class="el" href="classqx_1_1_qx_model.html#a37883f4d4971163c4e4b9c8cc7fb29ef">m_lManualInsertIndex</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Index to insert manually items to the collection. </p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00180">180</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<a class="anchor" id="af224b3a787360a263078e2d3c0ea843a"></a><!-- doxytag: member="qx::QxModel::m_model" ref="af224b3a787360a263078e2d3c0ea843a" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classqx_1_1_qx_model.html#aaaf8416f552f17d358c8ad844bb7e66f">type_collection</a> <a class="el" href="classqx_1_1_qx_model.html">qx::QxModel</a>&lt; T &gt;::<a class="el" href="classqx_1_1_qx_model.html#af224b3a787360a263078e2d3c0ea843a">m_model</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Model associated to a class registered into QxOrm context. </p>

<p>Definition at line <a class="el" href="_qx_model_8h_source.html#l00179">179</a> of file <a class="el" href="_qx_model_8h_source.html">QxModel.h</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>C:/Dvlp/_Perso/QxOrm/include/QxModelView/<a class="el" href="_qx_model_8h_source.html">QxModel.h</a></li>
</ul>
</div>
</div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="namespaceqx.html">qx</a>      </li>
      <li class="navelem"><a class="el" href="classqx_1_1_qx_model.html">QxModel</a>      </li>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Defines</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>


    <li class="footer">Generated on Sun Dec 11 2016 13:41:16 for QxOrm by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.5.1 </li>
   </ul>
 </div>


</body>
</html>
